package com.ylyq.ylxx.model.bean;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @ClassName OceanengineGroup
 * @Description TODO
 * @Author xiaweichao
 * @Date 2020/6/24 17:39
 * @Version 1.0
 */
@NoArgsConstructor
@AllArgsConstructor
@Data
@ApiModel(value = "获取广告组信息的相应参数")
public class OceanengineGroupInfo {

    /**
     * message : OK
     * code : 0
     * data : {"list":[{"name":"xxx","id":0,"campaign_create_time":"2019-01-01","campaign_modify_time":"2019-01-01"},{"name":"xxxx","id":1,"campaign_create_time":"2019-01-01","campaign_modify_time":"2019-01-01"}],"page_info":{"page":1,"page_size":10,"total_number":2,"total_page":1}}
     */

    private String message;
    private Long code;

    @ApiModelProperty(value = "响应内容")
    private OceanengineGroupDataBean data;

    @NoArgsConstructor
    @Data
    @AllArgsConstructor
    public static class OceanengineGroupDataBean {
        /**
         * list : [{"name":"xxx","id":0,"campaign_create_time":"2019-01-01","campaign_modify_time":"2019-01-01"},{"name":"xxxx","id":1,"campaign_create_time":"2019-01-01","campaign_modify_time":"2019-01-01"}]
         * page_info : {"page":1,"page_size":10,"total_number":2,"total_page":1}
         */

        private OceanengineGroupPageInfoBean page_info;
        private List<OceanengineGroupListBean> list;

        @NoArgsConstructor
        @Data
        @AllArgsConstructor
        public static class OceanengineGroupPageInfoBean {
            /**
             * page : 1
             * page_size : 10
             * total_number : 2
             * total_page : 1
             */

            private int page;
            private int page_size;
            private int total_number;
            private int total_page;
        }

        @NoArgsConstructor
        @Data
        @AllArgsConstructor
        public static class OceanengineGroupListBean {
            /**
             * name : xxx
             * id : 0
             * campaign_create_time : 2019-01-01
             * campaign_modify_time : 2019-01-01
             */
            @ApiModelProperty(value = "广告组name")
            private String name;
            @ApiModelProperty(value = "广告组id")
            private Long id;
            @ApiModelProperty(value = "广告组预算")
            private Double budget;
            @ApiModelProperty(value = "广告组预算类型")
            private String budget_mode;
            @ApiModelProperty(value = "广告组推广目的")
            private String landing_type;
            @ApiModelProperty(value = "广告组状态,")
            private String status;
            @ApiModelProperty(value = "第三方唯一键，传该值时保证接口重试的幂等性，带有相同unique_fk的请求服务端会视为同一个广告组处理。仅在创建接口传入且无法修改，如果创建时传入了已存在的唯一键值，那么会返回该唯一键值所对应的广告组ID。该值可用于内部系统会生成的唯一ID与头条ID做关联的场景，避免超时重试实际上一次创建请求又成功导致的重复创建问题，通过unique_fk可与内部系统ID实现关联并避免重复创建，可结合实际场景选择使用，广告组中的unique_fk要求不重复，与计划中的unique_fk无相关。,")
            private String unique_fk;
            @ApiModelProperty(value = "广告组时间戳,用于更新时提交,服务端判断是否基于最新信息修改")
            private String modify_time;
            @ApiModelProperty(value = "广告组创建时间")
            private String campaign_create_time;
            @ApiModelProperty(value = "广告组修改时间")
            private String campaign_modify_time;
            @ApiModelProperty(value = "广告组详细内容")
            private OceanengineReportGroupInfo.DataBean.ListBean reportdetail;
        }
    }
}
